fix(cli-tools): update cli-tools#796
Open
ppat-self-hosted-renovate-bot[bot] wants to merge 2 commits intomainfrom
Open
fix(cli-tools): update cli-tools#796ppat-self-hosted-renovate-bot[bot] wants to merge 2 commits intomainfrom
ppat-self-hosted-renovate-bot[bot] wants to merge 2 commits intomainfrom
Conversation
4ba3b17 to
8ce22f7
Compare
7439286 to
b14dd58
Compare
fb91fc2 to
6d86107
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
v2026.3.17->v2026.4.7v2026.4.15(+7)v2.70.0->v2.70.1v2.70.2Release Notes
jdx/mise (jdx/mise)
v2026.4.7: : Native ARM64 Python on WindowsCompare Source
This patch release fixes precompiled Python installation on Windows ARM64 machines. Previously, mise always downloaded the x86_64 Python build on Windows regardless of architecture, which caused failures when loading native ARM64 libraries. mise now correctly downloads the aarch64 build on Windows ARM64 systems.
Fixed
[WinError 193] %1 is not a valid Win32 applicationwhen loading native ARM64 DLLs. mise now downloads the nativeaarch64-pc-windows-msvcbuild on ARM64 Windows while continuing to use x86_64 on x64 Windows. #8961 by @JohanLorenzoNew Contributors
Full Changelog: jdx/mise@v2026.4.6...v2026.4.7
v2026.4.6: : Tera templates in miserc.toml, shim race condition fix, and SPM self-hosted supportCompare Source
This release adds Tera template support to
.miserc.tomlfiles for dynamic early-stage configuration, fixes a race condition during shim creation that affected multi-backend setups, and improves SPM backend compatibility with self-hosted GitHub Enterprise and GitLab instances. Several other bug fixes improve environment variable handling across tasks, redaction, and the vfox backend.Highlights
.miserc.toml-- Use environment variables, XDG directories, and OS-level functions likearch()andos()directly in your.miserc.tomlconfiguration, enabling dynamic early-stage settings such as platform-specific ceiling paths.mise reshimormise install.Added
Tera template support in
.miserc.toml--.miserc.tomlfiles now support Tera templates with a limited context available during early initialization: OS environment variables,config_root,cwd, XDG directories, and built-in functions/filters. Templates that fail to render gracefully fall back to raw content. #8867 by @richardthe3rdsing-boxadded to the built-in registry -- Install the sing-box universal proxy platform viamise use sing-box. #8944 by @tony-solFixed
Shim race condition with overlapping backends -- When multiple plugins provide the same shim (e.g.,
nodejsvia the default registry andasdf:nodejs), concurrentmake_shimcalls could race on file removal, producing intermittent "No such file or directory" errors. The file removal now tolerates already-deleted files. #8947 by @brander-johnmise env --redactedmissing tools-only redactions -- Env vars declared with bothtools = trueandredact = truewere not included in the redaction filter formise env --redacted. Both the standard and tools-only redaction sets are now checked. #8956 by @jakedgySPM backend API URL for self-hosted instances -- When using the SPM backend with a full URL pointing to a self-hosted GitHub Enterprise or GitLab instance, mise now derives the correct API URL from the host instead of always falling back to
api.github.com. Explicitapi_urloptions still take precedence. #8955 by @ThomasDutartrevfox backend missing dependency env -- When a vfox backend plugin declared
dependson another tool, the dependency's binaries were not available on PATH during plugin Lua hooks (BackendListVersions,BackendInstall,BackendExecEnv). Dependency environment is now properly propagated, matching the behavior of other backends. #8952 by @cpreciosoTask usage Tera templates failing with flags -- Task
usagefield defaults using{{ env.VAR }}Tera templates would fail with "Variable not found in context" whenever any flags were passed. The task argument parser now uses the full computed environment instead of an empty map. #8957 by @jdxClarified attestation settings placement -- The help messages for Python and Ruby attestation settings now specify that they must be placed under
[settings]inmise.toml, not under[python]or[ruby]where they are silently ignored. #8939 by @fru1tworldNew Contributors
Full Changelog: jdx/mise@v2026.4.5...v2026.4.6
v2026.4.5: : GitLab and Forgejo token support, env file diagnostics, and shell fixesCompare Source
This release extends mise's authentication support to GitLab and Forgejo backends, surfaces env files in diagnostic commands, and fixes several bugs in bash shell hooks, Windows tool installation, and PATH handling.
Highlights
mise config lsandmise doctornow show env files loaded viaMISE_ENV_FILEor_.filedirectives, making it easier to trace where environment variables come from.cd.Added
GitLab and Forgejo token resolution -- The GitLab and Forgejo backends now support the same multi-source token resolution as GitHub: environment variables (
MISE_GITLAB_TOKEN,MISE_FORGEJO_TOKEN, etc.), per-host token files (gitlab_tokens.toml,forgejo_tokens.toml), CLI tool integration (glab, fj),credential_command, andgit credential fill. A newmise tokencommand replaces the oldmise github tokenand addsmise token gitlabandmise token forgejosubcommands for debugging token resolution. #8868 by @roeleEnv files in
config lsanddoctor-- Env files loaded via theMISE_ENV_FILEsetting or_.fileconfig directives now appear inmise config lsoutput (with env var keys shown in verbose mode) and inmise doctoroutput (both text and JSON). #8853 by @SamSoldatenkoFixed
Double
.exeextension on Windows (aqua backend) -- When a package's Windows override URL already includes.exe, mise no longer appends a second.exesuffix. This affected 37 aqua registry packages includingcli/cli,kubernetes/kubectl,gruntwork-io/terragrunt, andrust-lang/rustup. #8863 by @yusei-wyDuplicate trust warning in bash -- Entering an untrusted project directory in bash triggered the trust warning from both the
chpwdhook andPROMPT_COMMAND, producing a duplicate message. The bash activation script now coordinates between the two hooks so the warning appears exactly once. #8920 by @timothyspargConfig root injected into PATH via
_.source-- When a sourced script prepended toPATH(e.g.,export PATH="/custom:$PATH"), an empty path component could resolve to the config root directory and get injected intoPATH. Empty path segments are now filtered out. #8936 by @jdxSpurious dependency warnings during install -- When
mise.tomlconfigured both a language runtime and a package from that ecosystem (e.g.,node+npm:prettier), mise would warn that npm was missing during version resolution even though node was configured and would be installed first. The warning is now suppressed when the providing tool is present in the toolset. #8923 by @jdxChanged
mise github tokenrenamed tomise token github-- The oldmise github tokencommand still works but is hidden from help output. The newmise tokencommand group addsgithub,gitlab, andforgejosubcommands. #8868 by @roeleNew Contributors
Full Changelog: jdx/mise@v2026.4.4...v2026.4.5
v2026.4.4: : Tool Dependencies, .NET Runtimes, and Task Argument ForwardingCompare Source
A feature-packed release that adds user-defined tool dependencies, .NET runtime-only installs, argument forwarding to task dependencies, and stronger supply-chain security for lockfiles -- along with a large batch of bug fixes across multiple backends and shells.
Highlights
mise.toml-- A newdependsfield lets you ensure one tool is fully installed before another starts, useful for tools with runtime dependencies on each other.{{usage.*}}templates, enabling parameterized build/deploy pipelines.runtimetool option.mise locknow cryptographically verifies provenance for the current platform at lock time, and a newlocked_verify_provenancesetting enables re-verification at install time.Added
User-specified tool dependencies -- Declare explicit installation dependencies between tools in
mise.tomlwith a newdependsfield, ensuring one tool is fully installed before another starts. #8776 by @cprecioso.NET runtime-only installs -- Install .NET runtimes alongside or instead of SDKs using the
runtimetool option. Valid values:dotnet,aspnetcore,windowsdesktop. #8524 by @fragon10Task dependency argument forwarding -- Task dependencies can reference parent task arguments using
{{usage.*}}templates independs,depends_post, andwait_for. Arguments flow through entire dependency chains. #8893 by @jdxinstall_beforeenforced on transitive npm dependencies -- Theinstall_beforesupply-chain cutoff is now forwarded to transitive dependency resolution using each package manager's native mechanism (npm --before,bun --minimum-release-age,pnpm --config.minimumReleaseAge). #8851 by @risu729locked_verify_provenancesetting -- New setting (also auto-enabled byMISE_PARANOID) that forces cryptographic provenance re-verification at install time even when the lockfile already has checksum and provenance data.mise locknow also performs full verification for the current platform at lock time. #8901 by @jdxtursoadded to the built-in registry -- Install the Turso CLI viamise use turso. #8884 by @kennFixed
--env=VALUEand-E=VALUEflag parsing -- The equals-sign form of the environment flag (e.g.,mise --env=production) was silently ignored, causing fallback to the default environment. Both--env=VALUEand--env VALUEforms now work correctly. #8889 by @jdx.devversions filtered in fuzzy matching -- Versions like2026.3.3.162408.dev0no longer incorrectly satisfy stable version requests. The version regex now matches.devin addition to-dev. #8849 by @richardthe3rdmise lock <tool>-- Runningmise lock nodeafter a version change no longer leaves duplicate entries for the old and new versions. #8599 by @altendkyfailed to update DIRENV_DIFFwarning no longer appears when the direnv diff environment variable is empty. #8857 by @yalemanmise trustwarning twice. #8898 by @timothysparg.tool-versionsno longer requires trust for task listing -- Files without Tera template syntax ({{,{%,{#) are skipped during the trust check inmise task ls. #8876 by @dportalesrfilter_binsand other tool options are no longer lost when specifying a version via CLI (e.g.,mise bin-paths tool@version). #8888 by @jdxtool_aliasnow correctly use the alias-specificasset_patternand other options instead of inheriting from the original tool. #8892 by @jdxmise.lockinstead of always recomputing it, fixing reproducibility for locked installs. #8750 by @hehaoqianjdx/rubynow support build revision tags (e.g.,3.3.11-1), preventing lockfile breakage when binaries are rebuilt with different checksums. #8900 by @jdxChanged
go.*namespace -- Allgo_*settings (e.g.,go_set_goroot) have been renamed to the nestedgo.*format (e.g.,go.set_goroot) for consistency with other language settings. The old names are preserved as deprecated aliases. #8598 by @jdbruijnBreaking Changes
asdf-- usedisable_backendsinsteadvfox-- usedisable_backendsinsteadcargo_binstall-- usecargo.binstallinsteaddisable_default_shorthands-- usedisable_default_registryinsteadpipx_uvx-- usepipx.uvxinsteadpython_compile-- usepython.compileinsteadpython_default_packages_file-- usepython.default_packages_fileinsteadpython_patch_url-- usepython.patch_urlinsteadpython_patches_directory-- usepython.patches_directoryinsteadpython_precompiled_arch-- usepython.precompiled_archinsteadpython_precompiled_os-- usepython.precompiled_osinsteadpython_pyenv_repo-- usepython.pyenv_repoinsteadpython_venv_stdlib-- usepython.venv_stdlibinsteadNew Contributors
Full Changelog: jdx/mise@v2026.4.3...v2026.4.4
v2026.4.3: : Fix seccomp build on armv7Compare Source
A small patch release that fixes a compile error preventing mise from building on 32-bit ARM (armv7) targets.
Fixed
mise execfailed to compile on armv7 targets. Thelibc::SYS_socketandlibc::SYS_socketpairconstants arei32on 32-bit platforms but the rule map expectsi64keys, causing a type mismatch. An explicitas i64cast fixes the build while remaining a no-op on 64-bit platforms. #8869 by @jdxFull Changelog: jdx/mise@v2026.4.2...v2026.4.3
v2026.4.2: : Process sandboxing for exec and runCompare Source
This release introduces experimental process sandboxing for
mise execandmise run, allowing you to restrict filesystem access, network access, and environment variables for executed processes.Added
Process sandboxing for
mise xandmise run(experimental) -- A new lightweight sandboxing layer lets you lock down what processes spawned by mise can access. On Linux it uses Landlock for filesystem restrictions and seccomp-bpf for network filtering; on macOS it usessandbox-exec(Seatbelt) with generated profiles. Requiresexperimental = truein settings. #8845 by @jdxTask-level configuration is also supported:
Fixed
RUNTIME.osTypeandRUNTIME.archTypevalues -- Fixed inconsistent documentation for runtime template variables and simplified examples. #8785 by @esteveFull Changelog: jdx/mise@v2026.4.1...v2026.4.2
v2026.4.1: : Per-tool install_before and musl detection fixesCompare Source
This release adds per-tool
install_beforeoverrides for more granular control over version freshness, fixes musl/glibc detection in minimal Docker containers, and ensures the-qflag works correctly withmise prepare.Added
Per-tool
install_beforeoption -- You can now setinstall_beforeon individual tools to override the global setting. This is useful when some tools need tighter freshness windows than others. Precedence is:--beforeCLI flag > per-toolinstall_before> globalinstall_beforesetting. #8842 by @sargunv-headwayRegistry: dbt-fusion --
dbt-fusionis now available as a short name in the mise registry, backed byaqua:getdbt.com/dbt-fusion. #8837 by @ryan-pipFixed
Musl detection in minimal Docker containers -- A musl-compiled mise binary running in a minimal container (scratch, busybox, distroless) with no
/lib/ld-*files would incorrectly identify the platform as glibc, causing it to select the wrong lockfile entries or tool variants. When no dynamic linker is found at runtime, mise now falls back to the binary's compile-time target. Additionally, a newMISE_LIBCenvironment variable (muslorgnu) allows explicitly overriding the detection. #8825 by @davireismise prepare -qnot suppressing output -- The-q(quiet) flag was not suppressing status messages inmise preparebecause they usedmiseprintln!()which bypasses the logging system. These messages now use standard logging macros that respect the quiet setting. #8792 by @Marukome0743Wrong option in
mise preparedocs example -- Theansible-galaxyexample in the prepare documentation used-f(force) instead of-r(requirements file). #8839 by @rndmh3roNew Contributors
Full Changelog: jdx/mise@v2026.4.0...v2026.4.1
v2026.4.0: : Linked version fixes, monorepo task aliases, and Azure Developer CLICompare Source
This release fixes a panic when using
mise linkwith aqua-backed tools, resolves bare task alias lookup in monorepo configurations, and handles arustup checkexit code that was incorrectly treated as an error.Added
azdis now available as a short name in the mise registry, backed byaqua:Azure/azure-dev. Install withmise use -g azd@latest. #8828 by @rajeshkamal5050Fixed
Panic with linked versions on aqua-backed tools -- Running
mise doctor,mise reshim, or any command that callslist_bin_pathson an aqua-backed tool with a linked version (created viamise link) would panic with aStripPrefixError. The root cause was that non-version link names like"brew"or"mylink"were passed to the aqua registry as version strings, where they unexpectedly matched semver constraints and produced absolute paths. Linked versions are now detected early and skip the aqua registry lookup entirely, returninginstall_path/bindirectly. #8801 by @nikobockermanmise outdatedfailing for Rust --rustup checkreturns exit code 100 when toolchain updates are available, which is normal behavior. Previously, mise treated this as a command failure, causingmise outdatedto report an error forcore:rust. The exit code is now handled correctly. #8832 by @shalkBare task aliases not resolving in monorepo mode -- In a monorepo with
config_rootsconfigured, runningmise run prl(a bare alias) would fail with "no task //:prl found", even thoughmise run //:prlworked. The issue was thatexpand_colon_task_syntaxexpanded bare aliases to//:prl, but the task loader then skipped config root discovery entirely. Both bare and prefixed alias forms now resolve correctly, and tab completion also works for monorepo-prefixed aliases. #8819 by @nkakourosTask help not shown for metadata-only usage specs -- When a task script defined
#USAGE long_about,before_help,after_help, orexampleswithout anyargorflagdirectives,mise run task --helpwould show the generic "This task does not accept any arguments" message instead of the usage-based help with the detailed description. #8824 by @nkakourosNew Contributors
Full Changelog: jdx/mise@v2026.3.18...v2026.4.0
v2026.3.18: : Python provenance verification, Go sub-module fixes, and shim recursion guardsCompare Source
This release adds supply-chain security improvements for Python, fixes several shim recursion issues that could cause system hangs, and improves Go backend version resolution for deeply nested sub-modules.
Highlights
astral-sh/python-build-standalonecan now be verified using GitHub Artifact Attestations, with downgrade protection in lockfiles.exec()templates with mise-managed tools.go list -versionsnow correctly install with@latestinstead of incorrectly resolving to a parent module's version.Added
Python GitHub Artifact Attestations -- Precompiled Python binaries are now verified against GitHub Artifact Attestations from
astral-sh/python-build-standalone, following the same pattern already used for Ruby. A newpython.github_attestationssetting (env:MISE_PYTHON_GITHUB_ATTESTATIONS) overrides the globalgithub_attestationssetting for Python specifically. When enabled,mise lockrecordsprovenance = "github-attestations"in lockfile entries, andmise installverifies downloaded tarballs. If a lockfile records provenance but verification is disabled at install time, the install fails with a downgrade-attack error. #8820 by @maleptRegistry: svgo --
svgo(SVG Optimizer) is now available asnpm:svgo. #8817 by @3w36zj6Fixed
Shim infinite recursion with system shims on PATH -- When tools are installed via
mise install --system(e.g. in Docker/devcontainer images), a second shims directory is created atMISE_SYSTEM_DATA_DIR/shims. If both the user and system shims directories were on PATH, invoking a shim for a tool not in any config file would hang indefinitely. The PATH fallback now skips both shims directories and rejects any binary that canonicalizes to the mise binary itself. #8816 by @andrewthauerFork bomb from
exec()templates, credential commands, and git credentials -- Three subprocess-spawning code paths inherited mise shims in PATH. When the subprocess invoked a mise-managed tool (e.g.gh auth tokenin anexec()template orcredential_command), the shim re-entered mise, triggering the same subprocess again -- causing infinite recursion. Observed as load average >1800 on affected systems. A new sharedpath_env_without_shims()helper now strips the shims directory from PATH in all three call sites. #8802 by @antonioacgGo backend
--lockedmode -- The Go backend was missing asupports_lockfile_url() -> falseoverride, causingmise install --lockedto fail for any go-backend tool since their lockfile entries never contain download URLs. #8790 by @palootcenas-outreachGo deeply nested sub-module version resolution --
mise ls-remotefor deeply nested Go sub-modules (e.g.github.com/go-kratos/kratos/cmd/kratos/v2) would incorrectly resolve to the root module's versions. The version fetching logic now tries the exact tool path first and treats an empty version list as authoritative, falling back to@latestfor installation instead of using a parent module's version. Results are now cached per module path. #8823 by @roeleFlutter version sorting -- Fixed version sorting in the Flutter registry entry by stripping the
-stablesuffix before sorting, and switched to per-platform URL templates. #8818 by @roeleNew Contributors
Full Changelog: jdx/mise@v2026.3.17...v2026.3.18
twpayne/chezmoi (twpayne/chezmoi)
v2.70.1Compare Source
Changelog
Features
221fd69feat: Add .chezmoi.rawHomeDir template variable4b909dcfeat: Add build-info check to doctor command487db8dfeat: Add globCaseInsensitive template functiondd03362feat: Detect unknown fields when parsing config filesFixes
06ab2d0fix: Fix Debian ARM package namesf85b2f8fix: Don't warn on secrets when re-adding encrypted filesDocumentation
1323292docs: Add missing protonpass password manager entry2ba550adocs: Make the AI/LLM stance even more obviousConfiguration
📅 Schedule: Branch creation - "before 10am on Tuesday" in timezone US/Eastern, Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by Renovate Bot.